package mx.unam.fciencias.ActividadesCulturales.pages;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import mx.unam.fciencias.actividadesculturales.entidades.portal.UsuarioSistema;
import org.apache.tapestry5.annotations.SessionState;

/**
 * Pagina de inicio despues de autenticarse en el sistema..
 */
public class Inicio {

    /** Usuario de sesion y del sistema. */
    @SessionState
    private UsuarioSistema usuario;
    /** Propiedad manejada por la sesion para saber si la sesion del usuario esta activa. */
    private boolean usuarioExists;

    /**
     * Metodo que se ejecuta al ser llamada esta pagina
     * si la sesion esta activa y si el usuario puede leer no hace nada en otro caso
     * redirecciona a la pagina de autenticacion.
     * @return pagina a redireccionar.
     */
    public Object onActivate() {
        if (!usuarioExists || !usuario.puedeLeer()) {
            return Index.class;
        }
        return null;
    }

    /**
     * Obtiene la fecha actual paraa mostrarla en el sistema.
     * @return la fecha.
     */
    public String getCurrentDate() {
        SimpleDateFormat sdf =
                new SimpleDateFormat("EEEE dd 'de' MMMM 'de' yyyy",
                new Locale("es", "MX"));
        Date fecha = new Date();
        return sdf.format(fecha);
    }

    /**
     * obtiene el nombre completo del usuario.
     * @return el nombre del usuario.
     */
    public String getUsuario() {
        return usuario.getNombreCompleto();
    }
}
